abstract class A{
	abstract void fun1();
}
class B{
	void fun2(A a){
		a.fun1();
	}
	void fun3(){
		System.out.println("world!");
	}
}
public class TestAbs{
	static void fun4(B b){
		b.fun3();
	}
	public static void main(String[] args){
		B b1 = new B();
		b1.fun2(new A()
			{
				void fun1(){
					System.out.println("hello ");
				}
			});
		fun4(new B());
	}
}